package com.ruoyi.system.service.impl;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.system.domain.WmsOutbound;
import com.ruoyi.system.domain.WmsProductBrands;
import com.ruoyi.system.domain.vo.SelectVo;
import com.ruoyi.system.mapper.WmsProductBrandsMapper;
import com.ruoyi.system.service.IWmsProductBrandsService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 商品品牌Service业务层处理
 *
 * @author ruoyi
 * @date 2025-06-11
 */
@Service
public class WmsProductBrandsServiceImpl implements IWmsProductBrandsService
{
    @Autowired
    private WmsProductBrandsMapper wmsProductBrandsMapper;

    /**
     * 查询商品品牌
     *
     * @param id 商品品牌主键
     * @return 商品品牌
     */
    @Override
    public WmsProductBrands selectWmsProductBrandsById(Long id)
    {
        return wmsProductBrandsMapper.selectWmsProductBrandsById(id);
    }

    /**
     * 查询商品品牌列表
     *
     * @param wmsProductBrands 商品品牌
     * @return 商品品牌
     */
    @Override
    public TableDataInfo<WmsProductBrands> selectWmsProductBrandsList(WmsProductBrands wmsProductBrands, PageQuery pageQuery)
    {
        Page<WmsProductBrands> page =wmsProductBrandsMapper.selectWmsProductBrandsList(pageQuery.build(),wmsProductBrands);
        return TableDataInfo.build(page);
    }

    /**
     * 新增商品品牌
     *
     * @param wmsProductBrands 商品品牌
     * @return 结果
     */
    @Override
    public int insertWmsProductBrands(WmsProductBrands wmsProductBrands)
    {
        return wmsProductBrandsMapper.insertWmsProductBrands(wmsProductBrands);
    }

    /**
     * 修改商品品牌
     *
     * @param wmsProductBrands 商品品牌
     * @return 结果
     */
    @Override
    public int updateWmsProductBrands(WmsProductBrands wmsProductBrands)
    {
        return wmsProductBrandsMapper.updateWmsProductBrands(wmsProductBrands);
    }

    /**
     * 批量删除商品品牌
     *
     * @param ids 需要删除的商品品牌主键
     * @return 结果
     */
    @Override
    public int deleteWmsProductBrandsByIds(Long[] ids)
    {
        return wmsProductBrandsMapper.deleteWmsProductBrandsByIds(ids);
    }

    /**
     * 删除商品品牌信息
     *
     * @param id 商品品牌主键
     * @return 结果
     */
    @Override
    public int deleteWmsProductBrandsById(Long id)
    {
        return wmsProductBrandsMapper.deleteWmsProductBrandsById(id);
    }

    @Override
    public List<SelectVo> getBrandsSelect(){
        return wmsProductBrandsMapper.getBrandsSelect();
    }
}
